import request from '../utils/request'

/**
 * 添加商品到购物车
 * @param {Object} data 购物车数据
 * @param {Number} data.bookId 图书ID
 * @param {Number} data.quantity 数量，默认1
 */
export function addToCart(data) {
  return request({
    url: '/cart',
    method: 'post',
    data: {
      bookId: data.bookId,
      quantity: data.quantity || 1
    }
  })
}

/**
 * 获取购物车列表
 */
export function getCartList() {
  return request({
    url: '/cart',
    method: 'get'
  })
}

/**
 * 更新购物车商品数量
 * @param {Number} cartId 购物车ID
 * @param {Number} quantity 新数量
 */
export function updateCartQuantity(cartId, quantity) {
  return request({
    url: `/cart/${cartId}`,
    method: 'put',
    params: { quantity }
  })
}

/**
 * 从购物车删除商品
 * @param {Number} cartId 购物车ID
 */
export function removeFromCart(cartId) {
  return request({
    url: `/cart/${cartId}`,
    method: 'delete'
  })
}

/**
 * 清空购物车
 */
export function clearCart() {
  return request({
    url: '/cart/clear',
    method: 'delete'
  })
}

